#! /usr/bin/env python
# -*- coding: utf-8 -*-

# *************************************************************
#     Filename @  onethr.py
#       Author @  Huoty
#  Create date @  2015-07-27 15:06:27
#  Description @  
# *************************************************************

import thread
from time import sleep, ctime

loops = [4, 2]

def loop(nloop, nsec, lock):
    print "start loop", nloop, "at:", ctime()
    sleep(nsec)
    print "loop", nloop, "done at:", ctime()
    lock.release()

def main():
    print "starting at:", ctime()
    locks = []
    nloops = range(len(loops))

    for i in nloops:
        lock = thread.allocate_lock()
        lock.acquire()
        locks.append(lock)

    for i in nloops:
        thread.start_new(loop, (i, loops[i], locks[i]))

    for i in nloops:
        while locks[i].locked():pass

    print "all DONE at:", ctime()


# Script starts from here

if __name__ == "__main__":
    main()

